﻿// LuaApi.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
extern "C"
{
#include "lua.h"  
#include "lualib.h"  
#include "lauxlib.h"  
}
#pragma comment(lib,"lua-5.3.6.lib")
int main()
{
    //1.创建一个state  
    lua_State* L = luaL_newstate();

    //2.入栈操作  
    lua_pushstring(L, "I am so cool~");
    lua_pushnumber(L, 20);

    //3.取值操作  
    if (lua_isstring(L, 1)) {             //判断是否可以转为string  
        std::cout << lua_tostring(L, 1) << std::endl;  //转为string并返回  
    }
    if (lua_isnumber(L, 2)) {
        std::cout << lua_tonumber(L, 2) << std::endl;
    }
    double dd = *lua_version(L);
    std::cout << dd << std::endl;
    
    //4.关闭state  
    lua_close(L);
    return 1;
}